package com.water_work_form.entity;

import com.baomidou.mybatisplus.annotation.IdType;

import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 基础表——设备计量
 * </p>
 *
 * @author xuke
 * @since 2023-08-01
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="BasicDevice对象", description="基础表——设备计量")
public class BasicDevice implements Serializable {

    private static final long serialVersionUID=1L;

    @TableId(value = "id", type = IdType.INPUT)
    private Long id;

    @ApiModelProperty(value = "仪器名称")
    private String name;

    @ApiModelProperty(value = "仪器型号")
    private String type;

    @ApiModelProperty(value = "证书编号")
    private String certificateNo;

    @ApiModelProperty(value = "证书有效期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date effectiveDate;

    @ApiModelProperty(value = "仪器编号")
    private String deviceNo;



    @Override
    public String toString() {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String effectiveDateString = sdf.format(effectiveDate);
        return "{\"id\":" + id + ",\"name\":\"" + name + "\",\"type\":\"" + type + "\",\"certificateNo\":\"" + certificateNo + "\",\"effectiveDate\":\"" + effectiveDateString + "\",\"deviceNo\":\"" + deviceNo + "\"}";
    }
}
